Access to information on a mobile terminal from a remote terminal

ABSTRACT

Method and system for managing information stored and/or services configured in a mobile terminal from a remote terminal connected to a data network, wherein the mobile terminal comprises a web server having an API defined for each piece of information and for each service it provides, characterized by: requesting from a web server, from a remote terminal comprising a web browser, the creation of at least one web page configured to manage a piece of information stored or a service configured in a mobile terminal; making an HTTP request from the web server to the mobile terminal in accordance with said at least one API, wherein said HTTP request comprises an identifier of the information or service to be managed; sending an HTTP response from the mobile terminal to the web server in accordance with said at least one API; downloading in the remote terminal from the web server the at least one web page designed to manage said information or service of the mobile terminal.

FIELD OF THE INVENTION

The present invention is applied to the field of mobiletelecommunications networks, more specifically, to the remote access tothe information stored in a mobile telephone.

BACKGROUND OF THE INVENTION

The memory of the mobile telephone and its SIM card currently storepersonal data of the user and mobile terminal state information.Personal data of the user stored in the memory of the mobile telephoneand the SIM card is understood to be contacts, notes, calendar, images,sounds, videos, short messages (SMSs), multimedia messages (MMSs) andelectronic mail (emails). The mobile terminal state informationcomprises, among others, the incoming and outgoing calls log, thebattery level of the mobile telephone, the coverage level of the mobileterminal and the mobile telephone state (normal, high, silent, vibrationonly). The mobile telephone offers a variety of services, such as makingcalls, sending SMSs, MMSs and emails, incoming call diversion andphotographing and recording videos with the camera of the mobiletelephone. All this information and services are accessed from themobile telephone itself.

In addition, a mobile terminal is always connected to the circuit domainby means of GSM, UMTS networks or the like. This circuit domain allowsit to make and receive calls, send and receive SMSs and USSD(Unstructured Supplementary Service Data) messages. The data or packetdomain, also called the internet, is not always accessible in the mobileterminal. The technology for connecting to the packet domain can be ofvery different types such as GPRS, EDGE, UMTS, WiFi, WiMAX, amongothers. The connection to the data or packet domain is carried out bythe initiative of the user or mobile terminal due to an external eventor when the mobile telephone has WiFi or WiMAX coverage. This impliesthat direct requests cannot be sent to the mobile terminal from the dataor packet domain, but rather it is the mobile terminal which makes therequests to the packet domain. Furthermore, once the mobile terminal isconnected to the packet domain, the location of the mobile terminalcannot be known for certain by means of its IP or URL address, due tothe fact that there is no standardized or commonly accepted system foridentifying and consequently locating a mobile telephone in the packetdomain.

In addition, web servers are known, which are programs responsible foraccepting HTTP (Hypertext Transfer Protocol) requests from clients,normally web browsers, and providing them with the HTTP responsestogether with the data contents, which are usually web pages. Webservers are normally large computers capable of providing multiple HTTPresponses.

Security and authentication SSL (Secure Socket Layer) applications suchas those described in RFC 2617, entitled HTTP Authentication: Basic andDigest Access Authentication, are also known.

In recent years, Representational State Transfer or REST has also beendeveloped, which is a software architecture technique for distributedhypermedia systems such as the World Wide Web. The term REST isgenerally used to describe any simple web interface transmittingspecific data on HTTP without an additional messaging layer or sessiontracking.

The personal data of the user stored in the memory of the mobiletelephone and its SIM card and the mobile terminal state information cancurrently only be accessed, added, deleted and shown directly from themobile telephone using the screen of the mobile telephone, the keys, thescroll wheel, pencils or pointers or even voice commands. The sameoccurs with services offered by a mobile telephone, which can only beexecuted from the mobile telephone itself.

As regards web servers, although several mobile telephones have a webserver, it is rather unusual that a web server of a mobile telephone iscapable of providing HTTP responses, mainly due to the lack of permanentconnection to the data or packet domain and due to the difficulty ofidentifying and locating the mobile terminal in the packet domain. Forexample, U.S. patent application US2001/0046851 describes a mobileterminal including a web server through which the mobile terminalconnects to a remote management terminal. The purpose of the web serverin the mobile terminal is to allow the latter to control a deviceconnected thereto.

Several methods and systems for attempting to remotely manage a mobiletelephone have been proposed to date. For example, European patentapplication EP1542432 describes a system in which a web server housed ina data network receives HTTP requests from a mobile telephone in orderto update data relating to the mobile telephone which are stored in theweb server of the data network.

However, this process for requesting information from the web serverrequires the presence and intervention of the user of the mobiletelephone and the direct handling thereof.

SUMMARY OF THE INVENTION

The object of the present invention is to remotely manage the differentfunctionalities, services and stored information of a mobile telephonewithout needing to physically handle the same.

To that end the present invention provides an architecture which allowsobtaining, adding and deleting personal data stored in the mobileterminal and its SIM card and mobile terminal state information; andexecuting the mobile terminal services from any device connected to adata or packet network, also called Internet. Thus, a web server servesa web page to a web browser of the remote terminal connected to Internetso that the user manages his or her mobile telephone through said webpage. This web server receives through the web page the user's commandsand obtains, adds and erases the information and orders executing theservices by directly accessing a web server housed in the mobileterminal. A user of a mobile telephone or terminal can thus interactwith his or her mobile terminal from any place and any other device withmore features (for example, a larger screen) instead of having to do itdirectly on the small screen and minute keys of the mobile telephones.

Thus, one of the aspects of the present invention relates to a methodfor managing information stored and/or services configured in a mobileterminal from a remote terminal, in which the mobile terminal isconfigured to connect to a mobile communications network and comprises aweb server having an API defined for each piece of information andservice provided by the mobile terminal, and in which said remoteterminal has access to a data network. The method comprises: requestingfrom a web server, from a remote terminal comprising a web browser, thecreation of at least one web page configured to manage at least onepiece of information stored or one service configured in a mobileterminal; making an HTTP request from the web server to the mobileterminal in accordance with said at least one API defined in the webserver of the mobile terminal, wherein said HTTP request comprises anidentifier of said information or service to be managed; sending an HTTPresponse from the mobile terminal to the web server in accordance withsaid at least one API defined in the web server of the mobile terminal;downloading in the remote terminal from the web server the at least oneweb page configured to manage said information stored or serviceconfigured in the mobile terminal.

The HTTP request from the web server to the mobile terminal preferablycomprises the steps of: making an HTTP request through the data networkfrom the web server to a gateway capable of locating the mobile terminalwhich is connected to a mobile communications network; and sending theHTTP request to an IP connections manager of the mobile terminal.

The HTTP response from the mobile terminal to the web server preferablycomprises the steps of: sending an HTTP response in accordance with saidat least one API defined in the web server of the mobile terminal froman IP connections manager of the mobile terminal to a gateway throughthe mobile communications network; and sending that HTTP response inaccordance with said at least one API defined in the web server of themobile terminal from said gateway to the web server through the datanetwork.

The HTTP request in accordance with the at least one API defined in theweb server of the mobile terminal sent to the IP connections manager ofthe mobile terminal is sent to the web server by means of said HTTPrequest.

The HTTP request in accordance with said at least one API defined in theweb server sent to the web server of the mobile terminal is in turn sentto a manager module which is chosen from: a module for managing personaldata of the user, a module for managing the mobile terminal stateinformation and a module for managing the mobile terminal services.

The method optionally further comprises a notification step fornotifying the user whereby the user is offered one of the followingoptions: permanently allowing the execution of the API, temporarilyallowing said execution, permanently denying the execution of the API ortemporarily denying said execution.

The information to be managed preferably relates to a resource which ischosen from one of the following groups of resources: personal data ofthe user, mobile terminal state information and mobile terminalservices. With said resource an action is carried out which is chosenfrom one of the following groups of actions: actions relating tomanaging personal data of the user, actions relating to managing themobile terminal state information and actions relating to managingmobile terminal services.

The identifier of the information or service to be managed comprised inthe HTTP request comprises the URL of the information or service to bemanaged. Said URL preferably comprises the MSISDN of the mobileterminal.

Said information stored in the mobile terminal relates to a piece ofinformation which is preferably chosen from one of the following groups:personal data of the user and mobile terminal state information. Withsaid information an action is carried out which is chosen from one ofthe following groups of actions: actions relating to managing personaldata of the user and actions relating to managing the mobile terminalstate information.

The information stored in a mobile terminal is stored in the memory ofthe mobile terminal or in the SIM card thereof.

Said service configured in the mobile terminal relates to a service fromthe group of mobile terminal services. With said service an action iscarried out which is chosen from the group of actions relating tomanaging mobile terminal services.

The HTTP request is made on a data channel which is set up in asignaling channel previously set up between the gateway and the IPconnections manager of the mobile terminal.

The HTTP response is carried out on a data channel which is set up in asignaling channel previously set up between the gateway and the IPconnections manager of the mobile terminal.

The signaling channel between both elements is preferably a TCP socket.The data channel between both elements is also preferably a TCP socket.

Another aspect of the present invention relates to a system comprising:at least one mobile terminal configured to be connected to a mobilecommunications network, in which said mobile terminal comprises a webserver; at least one terminal configured to be connected to a datanetwork, in which said terminal comprises a web browser; at least oneweb server connected to said data network. The terminal is capable ofremotely managing at least one piece of information stored and/or oneservice configured in the mobile terminal by means of accessing at leastone web page created in the terminal after downloading said informationstored or service configured in the mobile terminal.

The system preferably further comprises a gateway capable of setting upa connection between the data network and the mobile communicationsnetwork.

BRIEF DESCRIPTION OF THE DRAWINGS

For the purpose of aiding to better understand the features of theinvention according to a preferred practical embodiment thereof and tocomplement this description, a set of drawings with an illustrative andnon-limiting character is attached as an integral part thereof. In thesedrawings:

FIG. 1 shows the general architecture of the system according to anembodiment of the present invention.

FIG. 2 shows the architecture of the mobile terminal according to anembodiment of the present invention.

FIG. 3 shows the personal data of the user which can be stored in amobile telephone or in its SIM card.

FIG. 4 shows the mobile telephone state information.

FIG. 5 shows the services which the mobile telephone can offer accordingto an embodiment of the present invention.

FIG. 6 shows the architecture of the permanent data connections manageraccording to an embodiment of the present invention.

FIG. 7 shows the structure of a remote terminal connected to a datanetwork, through which it can connect to a permanent data connectionsmanager according to the present invention.

FIG. 8 shows the structure of the access lists included in the mobileterminal according to the present invention.

FIG. 9 shows the signal flow for the remote execution of a REST APIaccording to an embodiment of the present invention.

FIG. 10 shows the set-up of a permanent connection between a mobileterminal and the permanent data connections manager according to anembodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

In the context of the present invention, the following definitions mustbe taken into account:

An Application Programming Interface or API is a source code interfacewhich a computer system or a program library provides and sets forth sothat another computer program can execute service requests. It is theset of calls to a computer system or a program library offering accessto its services from the processes and represents a method for achievingabstraction in the programming, generally, although not necessarily,between the lower and upper levels or layers of the software.

REST (Representational State Transfer) API is understood to be an APIwhich is defined based on URLs (Uniform Resource Locators) and isinvoked by means of HTTP without any messaging layer such as SOAP orsession tracking with HTTP cookies. The Representational State Transfer(REST) is a style of software architecture for distributed hypermediasystems such as the World Wide Web.

Throughout this specification the term “comprises” and its derivativesmust not be interpreted in an excluding or limiting sense, i.e., it mustnot be interpreted in the sense of excluding the possibility that theelement or concept which it refers to includes additional steps orelements.

FIG. 1 shows the general architecture of the system according to anembodiment of the present invention.

The system of the present invention comprises a series of elements whichare described below:

As shown in FIG. 1, the system comprises a mobile terminal 1. The mobileterminal 1, which can be a mobile telephone, a PDA or the like, is anymobile terminal 1 capable of connecting to a wireless or mobile datanetwork 3. Non-limiting examples of wireless or mobile networks areGPRS, EDGE, UMTS, HSDPA, HSUPA, WiFi, WiMAX and Bluetooth.

The mobile terminal 1 comprises personal data of the user, stateinformation of the mobile terminal itself and services provided by themobile terminal 1. The personal data of the user and the stateinformation of the mobile terminal itself can be stored both in thememory of the mobile terminal itself and in the SIM card thereof. FIG. 2shows the architecture of the mobile terminal 1 in greater detail. Ascan be seen, the mobile terminal 1 also comprises a program or modulefor managing the personal data of the user 101, which managementconsists of obtaining, adding and deleting this data. It also comprisesa program or module for managing the mobile terminal state information102, which management consists of obtaining this information anddeleting some of it, such as the incoming calls log and outgoing callslog. It also comprises a program or module for managing the mobileterminal services 103, which is in charge of executing such services.The functionality of these three programs or modules 101, 102, 103 isexposed, i.e., it can be accessed for its remote execution, through aweb server 104 comprised in the mobile terminal 1. These functionalitiesare carried out by means of REST APIs. This means that by means of HTTP(HyperText Transfer Protocol) requests to the web server 104 of themobile terminal 1, the personal data 105 of the user can be obtained,added and deleted, the telephone state information 106 can be obtainedand some of it deleted, such as the incoming calls log 106-1 andoutgoing calls log 106-2, and the services of the mobile telephone 107can also be executed. This is explained in detail below.

The web server 104 can further optionally provide authentication,confidentiality and integrity in the communications for executing theREST APIs. To that end a conventional authentication and securityapplication such as SSL is enabled.

The web server 104 can further optionally have a notification system 108for notifying the user 9 of the mobile terminal of the execution of theAPI. This system notifies the user 9 of the mobile terminal 1 who (whichuser 10 is controlling the remote terminal 7) is to execute which API.The notification 108 is based on displaying a window on the screen ofthe mobile terminal 1 to the user 9 so that he or she chooses among thefollowing options: always allowing a remote user 10 who is accessing theweb server 104 of the mobile terminal 1 from a remote terminal 7 toexecute a certain REST API, allowing the accessing remote user 10 toexecute said API only once, allowing the accessing remote user 10 toexecute said API for a certain amount of time or number of times,denying the execution of an API for the accessing remote user 10 onlyonce or always denying said execution for the accessing remote user 10.

The system preferably uses the identification of the basic HTTPauthentication for identifying the remote user 10 who is accessing theREST API in this notification system 108. The information on the remoteusers who have permissions to access said API always or only once,either for accessing during a certain amount of time, or a certainnumber of times or indefinitely, or invariably have permission denied,or have it denied only once, is stored in the database 109 of the accesslists in the mobile terminal 1.

The mobile terminal 1 also further comprises a list manager 110 whichallows adding, deleting or changing the permissions of the database 109of the access lists.

Finally, the mobile terminal 1 comprises an IP connections manager 111,capable of maintaining a data connection 200 open with an externalserver 4 in the wireless or mobile network 3, called a permanent dataconnections manager 4. This permanent connections manager 4 is a gatewayallowing the connection between the wireless or mobile data network 3and the data network 5 and having the capacity to manage permanent dataconnections. The gateway 4 is detailed below. The open data connection200 with the gateway 4 allows the mobile terminal 1 to be available andlocatable in the mobile network 3, and therefore the REST APIs indicatedwith reference to the web server 104 of the mobile terminal 1 can beremotely used.

The diagram of FIG. 3 shows the personal data 105 of the user 9 which isstored in the mobile terminal 1 and/or in its SIM card. Examples ofpersonal data 15 are, by way of an illustrative and non-limitingexample, contacts 105-1, notes 105-2, calendar 105-3, images 105-4,sounds 105-5, videos 105-6, short messages (SMSs) 105-7, multimediamessages (MMSs) 105-8 and emails 105-9.

The diagram of FIG. 4 shows the mobile terminal state information 106,comprising, among others, the incoming calls log 106-1, the outgoingcalls log 106-2, the mobile terminal battery level indicator 106-3, themobile terminal coverage level indicator 106-4 and the mobile terminalstate 106-5. This information is also stored in the mobile terminal 1and/or in its SIM card. Examples of the mobile terminal state 106-5 are:normal, high, silent, vibration only, etc.

FIG. 5 shows the set of the configured mobile terminal services 107.This set of services is formed by services initiated by the mobileterminal 1. Other services which are initiated by external elements orelements that do not belong to the mobile terminal 1 and which implyexecuting events, such as incoming calls and receiving SMSs, MMSs oremails, are not inside this set of services. The services which a mobileterminal 1 can offer include, among others: making calls 107-1, sendingSMSs 107-2, sending MMSs 107-3, sending emails 107-4, incoming calldiversion 107-5, taking photographs 107-6 and recording videos 107-7with the camera of the mobile terminal 1.

As shown in FIG. 1, the system also comprises a gateway 4. As has beenstated previously, this gateway 4 acts as a permanent data connectionsmanager 4. The permanent data connections manager 4 maintains a dataconnection 200 (as shown in FIG. 2) with one or a plurality of mobileterminals 1 through the mobile network 3 and receives incoming HTTPrequests through a data network or internet 5 and resends them to theappropriate mobile terminal 1.

As can be seen in FIG. 6, this permanent data connections manager orgateway 4 comprises an incoming HTTP connections manager 400 forreceiving the connections of other elements of the data network 5, aconnection maintenance manager 401 with the mobile terminals 1 formaintaining the data connections with the mobile terminals 1 and sendingthem the incoming HTTP requests received by the incoming HTTPconnections manager 400. Both managers 400, 401 are also in charge ofresending the HTTP responses from the web server 104 of the mobileterminals 1 to the initial element which made the HTTP request. Thepermanent data connections manager 4 further comprises two databases: afirst database 403, called “mobile terminal sessions”, for saving theinformation of the mobile terminals having active data connections withthe connections manager 4 and a second database 402, called “incomingconnections sessions”, storing the information of the active sessionswhich are pending a response.

FIG. 1 also shows a web server 6 of the data network 5. This web server6 makes HTTP requests to the appropriate mobile terminals 1 to createweb pages that are served to a certain terminal 7. The format of thecreated web pages is any of the conventional formats, such as html,xhtml, although it can be any other formate.

Through the web server 6, the user 10 requests from the mobile terminal1 the creation of several web pages forming a web portal. This meansthat as a response to the HTTP request, a main web page is created whichprovides access to each of the personal information or resources of theuser (105-1, 105-2, 105-3, 105-4, 105-5, 105-6, 105-7, 105-8, 105-9). Aweb page is thus created for each piece of information stored in thememory of the mobile terminal or in its SIM card (105-1, 105-2, 105-3,105-4, 105-5, 105-6, 105-7, 105-8, 105-9). The main web page alsoprovides access to each one of the pieces of terminal state information(106-1, 106-2, 106-3, 106-4, 106-5). Finally, the main web page alsoprovides access to the mobile terminal services (107-1, 107-2, 107-3,107-4, 107-5, 107-6, 107-7). These web pages are dynamic web pages thatare served by a web server 6 with processing capability. In other words,they are web pages that are pre-configured or formatted beforehandwhich, as the appropriate HTTP requests are being made to the web server104 of the mobile terminal 1, and therefore as the web server 6 of thedata network 5 receives the responses to the download HTTP requests,they (the web pages) are filled out with the data of the remote terminal1 in execution time. The web server 6 can be any conventional web serverthat has the capability to execute instructions, such as a J2EE, ASP.NETand PHP server.

These web pages are a new user interface that allows a user to remotelymanage his or her terminal 1 from any terminal, device or computer 7with access to the Internet or data network 5. This remote managementcomprises obtaining, adding or deleting the personal data of the userstored in the memory of the mobile terminal 1 and its SIM card,obtaining the state information of the terminal 1 and deleting some ofit, such as the incoming calls logs 106-1 and the outgoing calls log106-2, and also remotely executing the services configured in saidterminal.

Finally, FIG. 1 also shows a remote terminal 7. This remote terminal 7,which is also shown in FIG. 7, comprises a conventional web browser 700.The web browser 700 allows access to the web pages that the web server 6of the data network 5 is able to serve.

The method provided by the present invention for managing informationstored and/or services configured in the mobile terminal 1 from a remoteterminal 7 is carried out on the architecture shown in FIG. 1 and isschematized in FIG. 9.

As shown in FIG. 9, a request 900 to download the main web page betweenthe remote terminal 7 and the web server 6 through the data network 5 isfirst set up for the purpose of creating web pages for the management ofthe mobile terminal 1 in a web server 6 and downloading them in a webbrowser 700 of a remote terminal. This request 900 consists of accessinga web page—the main web page—of the mobile terminal 1. This main webpage comprises a browser menu to access the remote management of thepersonal data and terminal state information and the remote execution ofthe terminal services. This access to the remote management andexecution is in the form of specific web pages of each resource andservice (105-1, 105-2, etc, and 107-1, 107-2, etc).

In other words the process is the following:

The user connects through the browser 700 to the web server 6.

The user of the remote terminal 7 downloads, through the web server 6,the main web page of the mobile terminal 1, i.e., it downloads the menuof the mobile terminal 1. It is not necessary to make any call to theREST APIs of the mobile terminal 1.

The user is then identified preferably by means of a user name and apassword, according to the basic authentication of the web server 104.

The user 10 then chooses the specific information (105-1, 105-2, . . . ,106-1, 106-2 . . . ) to be remotely managed or the service (107-1,107-2, . . . ) to be remotely executed by clicking on the main web page.

The web server 6 thus makes HTTP requests in accordance with thespecific REST API of the resource (105-1, 105-2, . . . , 106-1, 106-2 .. . ) or service (107-1, 107-2, . . . ) for remotely generating thespecific web page of such information or service.

Once the web page is downloaded in the remote terminal 7, the user canmanage the specific personal data (105-1, 105-2, . . . ) of the user,the specific terminal state information (106-1, 106-2, . . . ) orremotely execute the specific service (107-1, 107-2, . . . ).

Therefore if the user 10 clicks on the action “DELETE” in the specificweb page of the resource “AGENDA” for example, the HTTP request fordeleting a certain element from the agenda of the terminal 1 inaccordance with the REST API defined by the web server 104 is sent tothe web server 6. To that end the server 6 generates an information webpage concerning the state of said action.

Finally, this last web page generated by the web server 6 is downloadedin the terminal 7.

Returning to FIG. 9, once the web server 6 receives this request 900,the web server 6 makes an HTTP request to the mobile terminal 1. Asshown in FIG. 9, the web server 6 sends an HTTP request 901 inaccordance with the REST APIs to the gateway or permanent dataconnections manager 4. This connections manager 4, which has previouslyset up a permanent connection 200 with the mobile terminal 1 (see FIG.2), resends 902 the HTTP request to the mobile terminal 1 through the IPconnections manager 111 thereof. After a message exchange, which isdescribed in detail in relation to FIG. 10, the IP connections manager111 of the mobile terminal 1 sends an HTTP response 905 to the permanentdata connections manager 4 comprising the required information. Ifeverything has gone correctly, this HTTP response 905 comprises an “OK”with certain information, depending on each specific method (forexample, an XML list of the contacts of the mobile terminal 1 and SIMcard, an image, etc.) If there has been an error, an error response isreturned. The connections manager or gateway 4 in turn sends the HTTPresponse 906 to the web server 6, which downloads 907 the web page withthe information relating to the REST APIs in the remote terminal 7.

FIG. 10 shows the set-up and maintenance of the permanent dataconnection 200 between the connections manager or gateway 4 and themobile terminal 1:

Prior to sending the HTTP requests of FIG. 9, the IP connections manager111 initiates a data connection with the permanent data connectionsmanager 4. This data connection comprises setting up a signaling TCPsocket between the mobile terminal 1 and the permanent data connectionsmanager or gateway 4 and a TCP data socket 1004 between the mobileterminal 1 and the permanent data connections manager or gateway 4.

Firstly, the IP connections manager 111 of the mobile terminal 1 sets upa signaling TCP socket between the mobile telephone 1 and the permanentdata connections manager or gateway 4 and sends a “CONNECT” message 1000through such signaling TCP socket. This message 1000 comprises themobile terminal number or MSISDN and a timeout. The permanent dataconnections manager 4 responds with a “CONNREGISTERED ok” message 1001via the signaling TCP socket and stores this connection information inits mobile terminal sessions database 403. The IP connections manager111 of the mobile terminal 1 then sends a “WAITING” message 1002 to thepermanent data connections manager 4 via the signaling TCP socket.

If the permanent data connections manager or gateway 4 receives an HTTPrequest 901 (from the web server 6) for the mobile terminal 1, thepermanent data connections manager or gateway 4 sends it a“REQUESTPENDING” message 1003 via the signaling TCP socket with aRequest Id, which is the information necessary in order to set up a dataTCP socket for sending this HTTP request. Block 1050 of FIG. 10 showssaid HTTP request. Upon receiving this message 1003, the IP connectionsmanager 111 of the mobile terminal and the permanent data connectionsmanager or gateway 4 set up a data TCP socket 1004 and the HTTP request902 is sent. The HTTP response 905 of the mobile terminal 1 is also senton this data TCP socket 1004. The IP connections manager 111 of themobile terminal 1 resends 903 the HTTP request 902 to the web server 104of the mobile terminal 1 so that the latter processes it and returns anHTTP response 904. The IP connections manager 111 of the mobile terminal1 resends 905 the HTTP response 904 to the permanent data connectionsmanager or gateway 4 so that the latter resends 906 the HTTP response905 to the web server 6. When finished sending the HTTP response 906,the data TCP socket 1004 which had been previously created is destroyed.

If in contrast the permanent data connections manager or gateway 4 doesnot receive an HTTP request 901 intended for the mobile terminal 1, thelatter sends a “KEEPALIVE” message 1006 via the signaling TCP socket tothe IP connections manager 111 of the mobile terminal 1 when the timeouttime interval which had been defined in the initial message 1000 hasended. Blocks 1060 of FIG. 10 show the end of said timeout timeintervals. The IP connections manager 111 of the mobile terminal 1 sendsanother “WAITING” message 1002 via the signaling TCP socket uponreceiving this “KEEPALIVE” message 1006 in order to reinitiate the timerto the set time or timeout.

As shown in FIG. 6, the permanent data connections manager or gateway 4receives the incoming HTTP requests 901 by the incoming HTTP connectionsmanager module or program 400, saves the information relating to thesession of that HTTP request 400 in the incoming connections sessiondatabase 402 and resends the HTTP request to the connection maintenancemanager module or program with the mobile terminals 401, which firstidentifies the destination mobile terminal of the HTTP request. To thatend, the destination URL of the HTTP request 901, contains the mobileterminal number or MSISDN of the destination mobile terminal 1 in orderto be able to identify it. Examples of a destination URL can be, by wayof an illustrative and by no means limiting example,http://34610515151.vodafone.com or http://www.vodafone.com/34610515151.Once the mobile terminal 1 is identified, its location is searched forin the mobile terminal session database 403 and the HTTP request 902 isresent to the appropriate mobile terminal 1 by means of previouslyexplained message exchange.

The method for internally processing the HTTP requests 903 to the RESTAPIs in the mobile terminal 1 is described below:

The REST APIs are based on unequivocally identifying the actions(obtaining, adding, deleting and executing) together with the resources,information, data or services (personal data 105 of the user, terminalstate information 106 and mobile terminal services 107) with URLs whichcan be called by means of HTTP requests 903 in the web server 104 of themobile terminal 1. For example, an image 105-7 (piece of data) stored inthe mobile terminal 1 can thus be obtained (action) by making an HTTPrequest 902 903 to a URL which unequivocally identifies that image(piece of data).

The web server 104 of the mobile terminal 1 receives HTTP requests 903.At the time in which the web server 104 receives the HTTP request 903,the corresponding REST API is executed, i.e. what information is to beaccessed and what action is to be made or what is to be carried out isidentified. A result in the form of an HTTP response is then returned.In other words, if the HTTP request 903, including the destination URL,corresponds to the execution of the REST API, the HTTP request 903passes to the appropriate manager module or program 101, 102, 103,depending on the destination URL of the HTTP request 903. These managermodules or programs are for managing the personal data of the user 101,for managing terminal state information 102 and for managing the mobileterminal services 103.

The mobile terminal 1 optionally comprises a notifier 108. In this case,the HTTP request 903 is transferred to the notification system 108 ofthe mobile terminal 1. Thus, if the web server 104 has theauthentication, confidentiality and integrity options enabled in thecommunications for executing the REST API, by means of a conventionalauthentication and security application, such as an SSL application, thenotification system 108 identifies which resource will be executed andwho (i.e. which user 10 controls the remote terminal 7) makes thisrequest. The identity of who is making the HTTP request 903 gives theidentity defined in the basic authentication system of the web server104, preferably the authentication system defined in RFC 2617. Onceidentified, an access list database 109 is consulted in order to checkif said user has permissions for executing the resource identified bythe URL and HTTP request 903. If the user is still not registered in thedatabase 109 or does not have permanent permissions or always deniedpermissions, the user is notified of who is to execute which in themobile terminal 1. This notification is preferably carried out by meansof a window which is displayed on the screen of the mobile terminal 1.The user 10 who is accessing from a remote terminal 7 is not necessarilythe same user who is handling the mobile terminal 1. If the remote user10 has permanent permissions, the corresponding execution is notprevented even though there is no one at the end of the mobile terminal1, since the notification window does not appear and the system operateswithout problems. If no one is handling the mobile terminal 1 and thenotification window appears (which means that the person who isaccessing does not have permanent permissions and therefore needspermission), the HTTP request is not provided and therefore the RESTAPIs are not executed.

Thus, given a remote user 10 who is making a request relating to acertain piece of information or service R (the information or service ofthe REST API which is to be executed), the notification system 108provides several options: 1) always allowing the user 10 to execute thatinformation or service; 2) allowing the user 10 to execute theinformation or service R only once; 3) allowing the user 10 to executethe information or service R during a certain time period; 4) notallowing the user 10 to execute the information or service R thisspecific time; and 5) never allowing the user 10 to execute theinformation or service R. If the user 9 of the mobile terminal 1 givespermission to the user 10, the HTTP request 903 is transferred to thespecific manager module or program 101, 102, 103 of the information orservice to be executed. If in contrast the notification system 108 seesthat the user does not have permission for executing that information orservice, the notifier 108 returns the HTTP request 903 to the web server104, indicating it to respond to the user with an HTTP error response904 or denied access response 403.

As previously stated, the information relating to which users havepermission to different information or services is stored in the accesslist database 109 of the mobile terminal 1. FIG. 8 shows the structureof the access lists 109 included in the mobile terminal 1: column 109-1includes users; column 109-2 includes information or types of personaldata of the user stored in the mobile terminal or its SIM, mobileterminal state information or mobile terminal services; column 109-3includes the type of access, i.e., unlimited access, temporary access,one-time access, once-denied or permanently denied access, which eachuser has to each piece of information or service; and column 109-4includes the time or number of times allowed for each user andinformation and service.

As previously mentioned, the notification system 108 is optional andexecuting it requires the basic authentication to be enabled in the webserver 104.

The manager modules or programs for managing personal data of the user101, for managing the terminal state information 102 and for managingthe mobile terminal services 103 receive the request from the web server104 or optionally if the notifier 108 is enabled, from the notifier 108.These programs or modules 101, 102, 103 identify the specific resourceand the action which is to be carried out with it. It thus relates tothe program or module for managing personal data of the user 101, theinformation is that shown in FIG. 3 and the action is one of thefollowing: obtaining a data list, obtaining a piece of data, adding apiece of data or deleting a piece of data. If it relates to the programor module for managing the terminal state information 102, theinformation is that shown in FIG. 4 and the action is one of thefollowing: obtaining a piece of data (for all data of FIG. 4) and, forthe incoming calls log 106-1 and the outgoing calls log 106-2, alsodeleting a piece of data. If it relates to the program or module formanaging the mobile terminal services 103, the services are those shownin FIG. 5 and the action is executing the service in the mobile terminal1. These programs or modules 101, 102, 103 access their respectivepersonal data resources of the user 105 in the case of the program ormodule for managing personal data of the user 101, the terminal stateinformation 106 in the case of the program or module for managing theterminal state information 102 and mobile terminal services 107 in thecase of the program or module for managing the mobile terminal services103. There are many REST APIs defined as information and servicesdefined in the personal data resources of the user 105, the terminalstate information 106 and the mobile terminal services 107. In otherwords there is a REST API for the contacts 105-1, another one for thecalendar 105-2, another one for sounds 105-3, etc., another one for theincoming calls log 106-1, another one for the outgoing calls log 106-2,etc., another one for making calls 107-1, another one for sending SMSs107-2, etc, until completing all services and resources. Finally, theseprograms or modules 101, 102, 103 are in charge of creating the responseto the initial request of the REST APIs and of providing it with thesuitable HTTP response form for passing it to the web server 104, sothat the latter returns to it the HTTP response 904 to the initialrequest which it received from the IP connections manager 111.

After the message exchange carried out on the connections set up andshown with reference to FIGS. 9 and 10, an information or servicesmanagement interface of the mobile terminal 1 is displayed in the remoteterminal 7.

The web pages show and allow adding and deleting information relating tothe personal data of the user, i.e., the contacts, notes, calendar,images, sounds, videos, SMSs, MMSs and emails stored in the mobileterminal 1 and its SIM card and contain information relating to thetelephone state, i.e., the incoming call log, outgoing call log, batteryindicator, mobile telephone state and coverage indicator. Informationrelating to the incoming and outgoing call log can additionally bedeleted from the web pages. Finally, the web pages show and allowexecuting mobile terminal services from it, such as making calls,incoming call diversion, sending an SMS, sending an MMS, sending emails,taking photographs and recording videos. In summary, from the terminal7, a user 10 can remotely manage the mobile terminal 1 from these webpages.

In view of this description and set of drawings, a person skilled in theart could understand that the invention has been described according toseveral preferred embodiments thereof, but multiple variations can beintroduced in said preferred embodiments, without departing from theobject of the invention as it has been claimed.

1. A method for managing information stored and/or services configuredin a mobile terminal from a remote terminal, wherein said mobileterminal is configured to connect to a mobile communications network andcomprises a web server having an API defined for each piece ofinformation and for each service provided by the mobile terminal, andwherein said remote terminal has access to a data network, the methodcomprising: requesting from a web server, from a remote terminalcomprising a web browser, the creation of at least one web pageconfigured to manage at least one piece of information stored or oneservice configured in a mobile terminal; making an HTTP request from theweb server to the mobile terminal in accordance with said at least oneAPI defined in the web server of the mobile terminal, wherein said HTTPrequest comprises an identifier of said information or service to bemanaged; sending an HTTP response from the mobile terminal to the webserver in accordance with said at least one API defined in the webserver of the mobile terminal; and downloading in the remote terminalfrom the web server the at least one web page configured to manage saidinformation stored or service configured in the mobile terminal.
 2. Themethod according to claim 1, wherein the HTTP request from the webserver to the mobile terminal comprises the steps of: making an HTTPrequest through said data network from the web server to a gatewaycapable of locating the mobile terminal which is connected to a mobilecommunications network; and sending said HTTP request to an IPconnections manager of the mobile terminal
 3. The method according toclaim 1, wherein the HTTP response from the mobile terminal to the webserver comprises the steps of: sending an HTTP response in accordancewith said at least one API defined in the web server of the mobileterminal from an IP connections manager of the mobile terminal to agateway through the mobile communications network; and sending said HTTPresponse in accordance with said at least one API defined in the webserver of the mobile terminal from said gateway to the web serverthrough the data network.
 4. The method according to claim 2, whereinsaid HTTP request in accordance with said at least one API defined inthe web server of the mobile terminal sent to the IP connections managerof the mobile terminal is sent to the web server by means of said HTTPrequest.
 5. The method according to claim 4, wherein said HTTP requestin accordance with said at least one API defined in the web server sentto the web server of the mobile terminal is in turn sent to a managermodule which is chosen from: a module for managing personal data of theuser, a module for managing the mobile terminal state information and amodule for managing the mobile terminal services.
 6. The methodaccording to claim 4, further comprising a notification step fornotifying the user whereby the user is offered one of the followingoptions: permanently allowing the execution of the API, temporarilyallowing said execution, permanently denying the execution of the API ortemporarily denying said execution.
 7. The method according to claim 1,wherein said identifier of the information or service to be managedcomprised in the HTTP request comprises the URL of the information orservice to be managed.
 8. The method according to claim 7, wherein saidURL comprises the MSISDN of the mobile terminal.
 9. The method accordingto claim 1, wherein said information stored in the mobile terminalrelates to a piece of information which is chosen from one of thefollowing groups: personal data of the user and mobile terminal stateinformation.
 10. The method according to claim 9, wherein with saidinformation an action is carried out which is chosen from one of thefollowing groups of actions: actions relating to managing personal dataof the user and actions relating to managing the mobile terminal stateinformation.
 11. The method according to claim 1, wherein saidinformation stored in a mobile terminal is stored in the memory of themobile terminal or in the SIM card thereof.
 12. The method according toclaim 1, wherein said service configured in the mobile terminal relatesto a service from the group of mobile terminal services.
 13. The methodaccording to claim 12, wherein with said service an action is carriedout which is chosen from the group of actions relating to managing themobile terminal services.
 14. The method according to claim 2, whereinsaid HTTP request is made on a data channel which is set up in asignaling channel previously set up between the gateway and the IPconnections manager of the mobile terminal.
 15. The method according toclaim 3, wherein said HTTP response is carried out on a data channelwhich is set up in a signaling channel previously set up between thegateway and the IP connections manager of the mobile terminal.
 16. Themethod according to claim 14, wherein said signaling channel betweenboth elements is a TCP socket.
 17. The method according to claim 14,wherein said data channel between both elements is a TCP socket.
 18. Asystem comprising: at least one mobile terminal configured to beconnected to a mobile communications network, wherein said mobileterminal comprises a web server; at least one terminal configured to beconnected to a data network, wherein said terminal comprises a webbrowser; at least one web server connected to said data network; andwherein the terminal is capable of remotely managing at least one pieceof information stored and/or one service configured in the mobileterminal by means of accessing at least one web page created in theterminal after downloading said information stored or service configuredin the mobile terminal.
 19. The system according to claim 18, furthercomprising a gateway capable of setting up a connection between the datanetwork and the mobile communications network.